package com.traffic.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 出勤统计对象 per_attendance_statistics
 * 
 * @author 郭世纪
 * @date 2024-12-08
 */
public class PerAttendanceStatistics extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 统计ID */
    private Long statsId;

    /** 部门 */
    @Excel(name = "部门")
    private String department;

    /** 统计日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "统计日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date statisticsDate;

    /** 总人数 */
    @Excel(name = "总人数")
    private Long totalPeople;

    /** 按时签到人数 */
    @Excel(name = "按时签到人数")
    private Long onTime;

    /** 迟到人数 */
    @Excel(name = "迟到人数")
    private Long lateCount;

    /** 未出勤人数 */
    @Excel(name = "未出勤人数")
    private Long absentCount;

    /** 是否是月度统计 */
    @Excel(name = "是否是月度统计")
    private String monthlyStats;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date creatTime;

    public void setStatsId(Long statsId) 
    {
        this.statsId = statsId;
    }

    public Long getStatsId() 
    {
        return statsId;
    }
    public void setDepartment(String department) 
    {
        this.department = department;
    }

    public String getDepartment() 
    {
        return department;
    }
    public void setStatisticsDate(Date statisticsDate) 
    {
        this.statisticsDate = statisticsDate;
    }

    public Date getStatisticsDate() 
    {
        return statisticsDate;
    }
    public void setTotalPeople(Long totalPeople) 
    {
        this.totalPeople = totalPeople;
    }

    public Long getTotalPeople() 
    {
        return totalPeople;
    }
    public void setOnTime(Long onTime) 
    {
        this.onTime = onTime;
    }

    public Long getOnTime() 
    {
        return onTime;
    }
    public void setLateCount(Long lateCount) 
    {
        this.lateCount = lateCount;
    }

    public Long getLateCount() 
    {
        return lateCount;
    }
    public void setAbsentCount(Long absentCount) 
    {
        this.absentCount = absentCount;
    }

    public Long getAbsentCount() 
    {
        return absentCount;
    }
    public void setMonthlyStats(String monthlyStats) 
    {
        this.monthlyStats = monthlyStats;
    }

    public String getMonthlyStats() 
    {
        return monthlyStats;
    }
    public void setCreatTime(Date creatTime) 
    {
        this.creatTime = creatTime;
    }

    public Date getCreatTime() 
    {
        return creatTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("statsId", getStatsId())
            .append("department", getDepartment())
            .append("statisticsDate", getStatisticsDate())
            .append("totalPeople", getTotalPeople())
            .append("onTime", getOnTime())
            .append("lateCount", getLateCount())
            .append("absentCount", getAbsentCount())
            .append("monthlyStats", getMonthlyStats())
            .append("creatTime", getCreatTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
